libglog: Switch to CMake
authorRosen Penev <[email protected]>
Wed, 31 Jul 2019 05:22:00 +0000 (22:22 -0700)
committerRosen Penev <[email protected]>
Wed, 31 Jul 2019 20:38:42 +0000 (13:38 -0700)
Allows removal of InstallDev as well as further simplification. Also 100KB
smaller package.

Added some C/LDFLAGS to further reduce the size.

Small Makefile cleanups.

Signed-off-by: Rosen Penev <[email protected]>
libs/libglog/Makefile

index 83ff65cb79515daabc019724963b079b5fd9b66e..f70b7a1cf9083d24ae254d4381646f1346a67ec1 100644 (file)
@@ -2,31 +2,29 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=glog
 PKG_VERSION:=0.4.0
-PKG_RELEASE:=3
+PKG_RELEASE:=4
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://codeload.github.com/google/glog/tar.gz/v$(PKG_VERSION)?
 PKG_HASH:=f28359aeba12f30d73d9e4711ef356dc842886968112162bc73002645139c39c
 
+PKG_MAINTAINER:=Amir Sabbaghi <[email protected]>
 PKG_LICENSE:=BSD-3-Clause
 PKG_LICENSE_FILES:=COPYING
 
 PKG_FIXUP:=autoreconf
-
 PKG_BUILD_PARALLEL:=1
-PKG_INSTALL:=1
-
-PKG_BUILD_DEPENDS:=libgflags
+CMAKE_INSTALL:=1
 
 include $(INCLUDE_DIR)/package.mk
+include $(INCLUDE_DIR)/cmake.mk
 
 define Package/glog
   SECTION:=libs
   CATEGORY:=Libraries
   TITLE:=C++ implementation of the Google logging module
-  DEPENDS:= +libstdcpp +libpthread +gflags
+  DEPENDS:=+libstdcpp +libpthread +gflags
   URL:=https://github.com/google/glog
-  MAINTAINER:=Amir Sabbaghi <[email protected]>
 endef
 
 define Package/glog/description
@@ -34,23 +32,13 @@ define Package/glog/description
   module.  Documentation for the implementation is in doc/.
 endef
 
-CONFIGURE_VARS+=ac_cv_header_libunwind_h=0
+CMAKE_OPTIONS += \
+       -DBUILD_SHARED_LIBS=ON \
+       -DBUILD_TESTING=OFF \
+       -DUNWIND_LIBRARY=OFF
 
-TARGET_CXXFLAGS+=-std=c++11
-TARGET_LDFLAGS+=-lpthread
-
-define Build/Configure
-       $(call Build/Configure/Default,)
-endef
-
-define Build/InstallDev
-       $(INSTALL_DIR) $(1)/usr/include/glog
-       $(CP) $(PKG_INSTALL_DIR)/usr/include/glog/*.h $(1)/usr/include/glog
-       $(INSTALL_DIR) $(1)/usr/lib
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libglog.{a,so*} $(1)/usr/lib
-       $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
-       $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libglog.pc $(1)/usr/lib/pkgconfig/
-endef
+TARGET_CFLAGS += -ffunction-sections -fdata-sections -flto
+TARGET_CFLAGS += -Wl,--gc-sections
 
 define Package/glog/install
        $(INSTALL_DIR) $(1)/usr/lib